/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.bld.model.produto;

import br.com.bld.util.facade.BLDDataErro;

/**
 *
 * @author Pedro
 */
public class ProdutoEntity implements BLDDataErro {

    public static final String CLASS_ID = "ProdutoEntity";

    private String codgProduto;     //codigo_produto character varying(10)
    private String descricao;       //descricao character varying(255) NOT NULL
    private Double preco;           //preco real NOT NULL
    private String urlImagem;       //ulr_imagem character varying(255)

    public static final String CAMPO_CODG_PRODUTO = "Código do produto";
    public static final String CAMPO_DESCRICAO = "Descrição";
    public static final String CAMPO_PRECO = "Preço";
    public static final String CAMPO_URL_IMAGEM = "url imagem";

    /**
     * @return the codgProduto
     */
    public String getCodgProduto() {
        return codgProduto;
    }

    /**
     * @param codgProduto the codgProduto to set
     */
    public void setCodgProduto(String codgProduto) {
        this.codgProduto = codgProduto;
    }

    /**
     * @return the descricao
     */
    public String getDescricao() {
        return descricao;
    }

    /**
     * @param descricao the descricao to set
     */
    public void setDescricao(String descricao) {

        if (descricao == null || descricao.equals("")) {
            throw new IllegalArgumentException(String.format(CAMPO_OBRIGATORIO, CAMPO_DESCRICAO));
        }

        this.descricao = descricao;
    }

    /**
     * @return the preco
     */
    public Double getPreco() {
        return preco;
    }

    /**
     * @param preco the preco to set
     */
    public void setPreco(Double preco) {
        
        if (preco == null) {
            throw new IllegalArgumentException(String.format(CAMPO_OBRIGATORIO, CAMPO_PRECO));
        }
        
        this.preco = preco;
    }

    /**
     * @return the urlImagem
     */
    public String getUrlImagem() {
        return urlImagem;
    }

    /**
     * @param urlImagem the urlImagem to set
     */
    public void setUrlImagem(String urlImagem) {
        this.urlImagem = urlImagem;
    }
}
